home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / Apps / DevTools / ClassEditor.0.4 / Source / CEClassEditor.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-06-05  |  3.3 KB  |  170 lines

  1. /* CEClassEditor.h                 
  2.  *
  3.  * This object controls the data of a beaker (molecules, cameras, groups etc.)
  4.  * It is the main document of BeakerBoy and controls everything from loading to
  5.  * setting up the browser which does most of the other work.
  6.  *
  7.  * Usage: ....
  8.  *
  9.  * Written by:         Thomas Engel
  10.  * Created:            23.10.1993 (Copyleft)
  11.  * Last modified:     12.11.1994
  12.  */
  13.  
  14. typedef enum 
  15. {
  16.     CE_FILETYPE_NONE = 0,
  17.     CE_FILETYPE_ASCII,
  18.     CE_FILETYPE_RTF,
  19.     CE_FILETYPE_RTFD
  20. } CE_FILETYPES;
  21.  
  22. typedef enum 
  23. {
  24.     CE_BrowseClassInfo = 1,
  25.     CE_BrowseInstanceVars,
  26.     CE_BrowseMethods,
  27.     CE_BrowseInstanceMethods,
  28.     CE_BrowseClassMethods,
  29.     CE_BrowseMethodsByCategory,
  30.     CE_BrowseDependencies,
  31.     CE_BrowsePlainC
  32. } CE_PrimaryBrowsing;
  33.  
  34. typedef enum 
  35. {
  36.     CE_BrowseReferences = 1,
  37.     CE_BrowseHistory,
  38.     CE_BrowseBugs
  39. } CE_SecondaryBrowsing;
  40.  
  41.  
  42. #import <appkit/appkit.h>
  43. #import <CEAppManager.h>
  44.  
  45. @interface CEClassEditor:Object
  46. {
  47.     id    window;
  48.     id    cheatWindow;
  49.  
  50.     id    browser;
  51.     id    modePopup;
  52.     id    selection;
  53.  
  54.     id    secondaryBrowser;
  55.     id    secondaryModePopup;
  56.     id    secondarySelection;
  57.     
  58.     id    classHierarchyField;
  59.     
  60.     id    selectorNameField;
  61.     id    methodNameField;
  62.     id    docuTextView;
  63.     id    sourceTextView;
  64.     
  65.     id    filename;
  66.     id    methodList;
  67.     
  68.     id    headerFile;
  69.     id    sourceFile;
  70.     id    docuFile;
  71.     int    headerStyle;
  72.     int    sourceStyle;
  73.     int    docuStyle;
  74.     
  75.     @private
  76.     
  77.     BOOL    _updatingTextViews;
  78.     BOOL    _changedTexts;
  79.     id        _changedWindow;
  80.     int        _docuOriginStart;
  81.     int        _docuOriginEnd;
  82.     int        _sourceOriginStart;
  83.     int        _sourceOriginEnd;
  84.  
  85.     id        _tempPb;
  86.     
  87.     id        _docuPath;
  88.     id        _headerPath;
  89.     id        _sourcePath;
  90. }
  91.  
  92. + initialize;
  93.  
  94. - init;
  95. - initFromFile:(const char *)fileName;
  96. - free;
  97.  
  98. - window;
  99.  
  100. - reparseMethods:sender;
  101. - save:sender;
  102. - close:sender;
  103. - undo:sender;
  104.  
  105. - resolveLock:sender;
  106.  
  107. // Keeping windows in sync...
  108.  
  109. - switchToNewDisplayMode:sender;
  110. - selectNewMethodFromText:sender;
  111. - selectNewMethod:sender;
  112. - selectTrueLine:(int)line inSource:(BOOL)aFlag;
  113. - _setIsUpdatingTextViews:(BOOL)flag;
  114. - _showSourceForMethod:aMethod;
  115. - _silentlySyncWindows;
  116. - _syncWindows;
  117.  
  118. // Working with documentation...
  119.  
  120. - _showDocuForMethod:aMethod;
  121.  
  122. // Controlling the windows
  123.  
  124. - showCheatWindow:sender;
  125. - showAllFiles:sender;
  126. - showDocumentationOnly:sender;
  127. - showInterfaceOnly:sender;
  128. - showImplementationOnly:sender;
  129. - _resizeCheatWindowFor:mainView andHide:secondView :thirdView;
  130.  
  131. // Delegation done by the Browser
  132.  
  133. - (int)browser:sender fillMatrix:matrix inColumn:(int)column;
  134. - _checkSelectionInBrowser:aBrowser;
  135.  
  136. - (int)fillClassInfoIntoMatrix:matrix;
  137. - (int)fillInstanceVarsIntoMatrix:matrix;
  138. - (int)fillMethodsIntoMatrix:matrix;
  139. - (int)fillInstanceMethodsIntoMatrix:matrix;
  140. - (int)fillClassMethodsIntoMatrix:matrix;
  141. - (int)fillMethodsByCategoryIntoMatrix:matrix;
  142. - (int)fillDependenciesIntoMatrix:matrix;
  143. - (int)fillPlainCIntoMatrix:matrix;
  144.  
  145. - _fillCell:theCell forMethod:aMethod;
  146.  
  147. - (int)fillReferencesIntoMatrix:matrix accordingTo:theSelection;
  148. - (int)fillHistoryIntoMatrix:matrix accordingTo:theSelection;
  149. - (int)fillBugsIntoMatrix:matrix accordingTo:theSelection;
  150.  
  151. // Delegation done by the Texts
  152.  
  153. - textDidChange:sender;
  154. - textDidGetKeys:sender isEmpty:(BOOL)flag;
  155. - _highlightPrevious:(char *)aString inView:aText;
  156. - textShouldPerformCompletion:sender;
  157.  
  158. // Delegation done by the Window
  159.  
  160. - windowDidBecomeKey:sender;
  161. - windowWillClose:sender;
  162.  
  163. @end
  164.  
  165. /*
  166.  * History: 13.01.95 Buh
  167.  *            
  168.  *
  169.  * Bugs: - ...
  170.  */